﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace UniPie
{
	/// <summary>
	/// Defines application properties which should be considered when checking
	/// the validity of a TriggerState.
	/// </summary>
	public class ApplicationFilter
	{
		public bool IsSystemWide { get; set; }
		public string WindowCaption { get; set; }
		public string ApplicationClass { get; set; }

		public ApplicationFilter()
		{
			IsSystemWide = true;
			WindowCaption = "";
			ApplicationClass = "";
		}

		/// <summary>
		/// Deep copy constructor.
		/// </summary>
		public ApplicationFilter(ApplicationFilter af)
		{
			IsSystemWide = af.IsSystemWide;
			WindowCaption = af.WindowCaption;
			ApplicationClass = af.ApplicationClass;
		}

		public ApplicationFilter(bool TheIsSystemWide, string TheWindowCaption, string TheApplicationClass)
		{
			IsSystemWide = TheIsSystemWide;
			WindowCaption = TheWindowCaption;
			ApplicationClass = TheApplicationClass;
		}
	}
}
